Comparison of layout engines (Cascading Style Sheets)
The following tables compare CSS compatibility and support for a number of layout engines. Please see the individual products' articles for further information. This article is not all-inclusive or necessarily up-to-date. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.
Explanation of the tables
Engine nomenclature
Rather than the names of web browsers, the names of the underlying engines are used. The browsers that use the various engines are listed below.
Layout engine |
Release version |
Preview version |
Used by |
Amaya |
11.3.1 |
11.3-pre |
Amaya |
Gecko |
6.0.2 |
8.0a2 |
All Mozilla software, including Firefox; SeaMonkey and Galeon; Camino; K-Meleon; Flock (up to 2.x); Epiphany-gecko; Debian IceWeasel; GNU IceCat (formerly GNU IceWeasel); Icedove, Iceape and Iceowl; Fennec |
KHTML |
|
N/A |
Konqueror |
Presto |
2.10.229 |
2.9.168 |
Opera; Opera Mobile, Nintendo DS & DSi Browser; Internet Channel |
Prince |
7.1 |
N/A |
Prince XML |
Tasman |
(IE 5.2.3 for Mac) |
none (aborted in 2003) |
Internet Explorer 5+ for Mac OS X |
Trident |
5.0 (IE 9) |
6.0 (IE 10) |
Internet Explorer and other Internet Explorer shells like Maxthon (Microsoft Windows operating systems only), Windows Phone 7 |
WebKit |
534.20 |
r83424 |
Safari (both desktop and mobile), Google Chrome, Maxthon 3, Shiira, iCab 4, OmniWeb 5.5+, Epiphany, Adobe AIR, Midori, Adobe Dreamweaver CS4 and CS5, Android browser, Palm webOS browser, Symbian S60 browser, OWB, Steam, Rekonq, Arora, Flock (version 3+), RockMelt |
Values
Values indicate the level of support in the most recent version of the layout engine, or (if a version number is given) in the specified version. Version numbers without any other value indicate the version at which the layout engine first fully supported the feature.
Value |
Meaning |
Yes |
Indicates that the layout engine fully supports this property/element when valid values are used. |
No |
Indicates that the property/element is completely ignored. |
Partial |
Indicates that the property/element is understood, but that not all values are supported. Supported values are implemented correctly. |
Incorrect |
Indicates that the property/element is understood, but that it is not implemented correctly in all cases. |
Experimental |
Indicates that the property/element is understood, but supported under an alternate name. May be incomplete or buggy. |
Dropped |
Indicates that the property/element is no longer supported. |
Nightly build |
Indicates that the property/element is supported to some extent in an experimental/nightly build. Future support is expected. |
Depends |
Indicates that the property/element is supported only on certain platforms, or if certain settings are configured. |
CSS version support
See the article Cascading Style Sheets for more information on the different versions of CSS. This table doesn't reference CSS2.0, as CSS2.1 was intended to replace it by correcting or removing a few errors and features rejected by the CSS community. Most of the removed CSS2 features will be made obsolete by CSS3.
Grammar and rules
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
CSS2 |
!important |
Weight increasing |
7.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
/*Comment*/ |
Comments |
3.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
@import |
Import stylesheet |
8.0 |
1.0 |
Yes |
Yes |
1.0 |
2.1 |
@charset |
Character set |
5.5 |
1.0 |
0 |
4.2.3 |
1.0 |
Yes |
@media |
Media-specific rules |
5.5 |
1.0 |
Yes |
Yes |
1.0 |
5.1 |
@page |
For paged media |
8.0 |
No[g 1] |
Nightly Build[w 1] |
No |
1.0 |
6.0 |
CSS3 |
@namespace |
Namespace declaration |
9.0[t 1] |
1.0 |
Yes |
Yes |
1.0 |
5.0 |
@font-face |
Define font |
9.0[t 1] |
1.9.1 |
525 |
4.3 |
2.2 |
6.0 |
@phonetic-alphabet |
Phonetic pronunciation |
No |
No |
No |
No |
No |
No |
@region |
Region flow segment |
Platform Preview |
No |
Nightly build |
No |
No |
No |
@counter-style |
Custom Counter Styles |
No |
No |
No |
No |
No |
No |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Trident grammar and rule notes
- !important — Prior to 7.0,
!important
doesn't override rules defined later in the same declaration block.
- @import — Prior to 8.0, media type support is broken. For
@import <URL> <MEDIA>
, IE requests as the URL "<URL> <MEDIA>
" and will include the url()
token and/or quotes in the URL, too, if present. Cannot import more than 35 stylesheets.
Presto grammar and rule notes
- @import — Whilst Gecko, WebKit and iCab download all media stylesheets immediately, Opera only downloads handheld, print, projection and screen media, as well as speech if "voice" feature is enabled and tv, on tv devices. Text browser emulation mode is only a user stylesheet, so it does not switch to tty media type. This is consistent with older text browsers, which do not respect any CSS.
Selectors
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Element selectors[spec 1] |
CSS2 |
* |
Universal |
7.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
E |
Element |
4.0 |
1.0 |
85 |
Yes |
Yes |
E.class |
Class |
7.0 |
1.0 |
85 |
Yes |
Yes |
E#id |
ID |
4.0 |
1.0 |
85 |
Yes |
Yes |
CSS3 |
ns|E |
Namespaced |
9.0 |
1.0 |
Yes |
Yes |
Yes |
Relationship selectors |
CSS2 |
E F |
Descendant |
4.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
E > F |
Child |
7.0 |
1.0 |
85 |
Yes |
Yes |
E + F |
Direct adjacent |
7.0 |
1.0 |
85 |
Yes |
Yes |
CSS3 |
E ~ F |
Indirect adjacent |
7.0 |
1.7 |
412 |
3.3.2 |
2.0 |
Yes |
CSS4 |
$E > F |
Subject |
No |
No[g 2] |
No |
No |
No |
No |
Attribute selectors |
CSS2 |
E[attr] |
Has |
7.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
E[attr="value"] |
Equals |
7.0 |
1.0 |
Yes |
Yes |
Yes |
E[attr~="value"] |
Contains (space-separated) |
7.0 |
1.0 |
Yes |
Yes |
Yes |
E[attr|="value"] |
Contains (hyphen-separated) |
7.0 |
1.0 |
Yes |
Yes |
Yes |
CSS3 |
E[attr^="value"] |
Begins with |
7.0 |
1.0 |
Yes |
3.4 |
1.0 |
Yes |
E[attr$="value"] |
Ends with |
7.0 |
1.0 |
Yes |
3.4 |
2.0 |
Yes |
E[attr*="value"] |
Contains substring |
7.0 |
1.0 |
Yes |
3.4 |
Yes |
E[ns|attr] |
Namespaced |
7.0 |
1.0 |
Yes |
3.4 |
No |
Pseudo-classes |
CSS2 |
E:link |
Unvisited hyperlink |
3.0 |
1.0 |
85 |
Yes |
1.0 |
6.0 |
E:visited |
Visited hyperlink |
3.0 |
1.0 |
85 |
Yes |
Yes |
E:active |
Active |
8.0 |
1.0 |
85 |
Yes |
Yes |
E:hover |
Mouseover |
7.0 |
1.0 |
419.3 |
Yes |
Yes |
E:focus |
Focused |
8.0 |
1.0 |
Yes |
Yes |
Yes |
E:first-child |
First child |
7.0 |
1.0 |
85 |
Yes |
Yes |
E:lang() |
Language |
8.0 |
1.2 |
525 |
3.4 |
Yes |
@page:first |
First page |
8.0 |
No[g 1] |
Yes[w 2] |
No |
Yes |
@page:left |
Left page |
@page:right |
Right page |
CSS3 |
E:root |
Root |
9.0 |
1.0 |
85 |
3.4 |
2.1 |
Yes |
E:not() |
Negation |
E:empty |
Empty |
1.8 |
412 |
E:first-of-type |
First child of type |
1.9.1 |
525 |
E:last-child |
Last child |
1.0 |
E:last-of-type |
Last child of type |
1.9.1 |
E:only-child |
Only child |
1.8 |
E:only-of-type |
Only child of type |
1.9.1 |
E:nth-child |
Nth child |
1.9.1 |
E:nth-last-child |
Nth last child |
1.9.1 |
E:nth-of-type |
Nth child of type |
1.9.1 |
E:nth-last-of-type |
Nth last child of type |
1.9.1 |
E:target |
Target |
1.3 |
2.5 |
No |
E:enabled |
Enabled state |
1.8 |
2.0 |
E:disabled |
Disabled state |
1.8 |
E:checked |
Checked state |
1.0 |
E:indeterminate |
Indeterminate state |
1.9.2 |
522 |
No |
No |
E:default |
Default |
No |
1.9 |
Yes[w 3] |
4.3 |
2.0 |
E:valid |
Valid |
1.8 |
Yes[w 4] |
No |
E:invalid |
Invalid |
E:in-range |
In range |
Yes[w 5] |
E:out-of-range |
Out of range |
E:required |
Required |
2.0[g 3] |
Yes[w 6] |
E:optional |
Optional |
E:read-only |
Read-only |
Experimental[g 4] |
No |
Incorrect |
Incorrect |
E:read-write |
Read and write |
Pseudo-elements |
CSS2 |
E:first-letter |
First letter |
9.0 |
1.0 |
85 |
Yes |
1.0 |
5.0 |
E:first-line |
First line |
Partial |
No[r 1] |
E:before |
Before |
8.0 |
1.9.1 |
Partial |
Yes |
E:after |
After |
CSS3 |
E::before |
Double colon notation |
9.0 |
1.9.1 |
Partial |
3.4 |
1.0 |
Yes |
E::after |
Double colon notation |
E::first-letter |
Double colon notation |
1.5 |
85 |
E::first-line |
Double colon notation |
Partial |
No[r 1] |
E::selection |
Selection |
Experimental[g 5] |
412 |
2.1 |
No |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
General selector notes
- :read-only and :read-write — Both Presto and KHTML handle the case of the
contenteditable
attribute incorrectly.
- ::selection has been removed from the CSS3 specification, but is still supported by many browsers.
Trident selector notes
- :active — Prior to 8.0,
:active
is only supported on anchor elements.
- :hover — Prior to 7.0,
:hover
is only supported on anchor elements.
- .one.two — Prior to 7.0, only
.two
class selector was taken into consideration.
- * — Prior to 7.0 this was treated as a single or no element.
- [attr] — Matches every
td
and th
in a table when the attribute is colspan
(regardless of whether any actually have a colspan
attribute).[t 2] This may not actually be a bug, as ambiguity exists in the specification.[t 3]
- :first-letter, :first-line — Prior to IE9 in 6.0, combining
:first-letter
rules with others may be problematic.[t 4] In 8.0, rules with !important
are ignored inside :first-line
and :first-letter
declarations.[t 5]
Gecko selector notes
- (:):before, (:):after — CSS2.0 behavior : some properties are unimplemented prior to 1.9.1.[g 6]
WebKit selector notes
- :lang() — Only detected when explicitly present on element being tested, attribute not inherited.
- (:):first-line —
text-transform
doesn't apply with this pseudo-element.[w 7]
(:):before/after
— some styles can't be applied to :before
and :after
pseudo-elements, such as animations and transitions.[w 8]
Presto selector notes
- :target — Prior to 2.5, styles aren't applied when navigating using back and forward buttons.
Properties
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Box Model[spec 2] |
CSS2 |
margin |
9.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
padding |
4.0 |
1.0 |
85 |
Yes |
Yes |
width |
4.0 |
1.0 |
85 |
Yes |
Yes |
height |
4.0 |
1.0 |
85 |
Yes |
Yes |
float |
5.0 |
1.0 |
85 |
Yes |
Yes |
clear |
5.0 |
1.0 |
85 |
Yes |
Yes |
display |
8.0 |
Yes |
85 |
Yes |
Yes |
min-width |
7.0 |
1.0 |
416 |
Yes |
5.0 |
max-width |
7.0 |
1.0 |
416 |
Yes |
5.0 |
min-height |
7.0 |
1.7 |
416 |
3.3.2 |
5.0 |
max-height |
7.0 |
1.7 |
416 |
3.3.2 |
5.0 |
clip |
8.0 |
1.0 |
85 |
Yes |
5.0 |
overflow |
9.0 |
1.0 |
85 |
3.2 |
5.0 |
visibility |
9.0 |
1.8 |
Partial |
Partial |
2.5 |
Partial |
CSS3 |
overflow-x |
9.0 |
1.8 |
525 |
3.5.6 |
2.1 |
5.0 |
overflow-y |
Borders[spec 3] |
CSS2 |
border |
4.0 |
1.0 |
85 |
Yes |
1.0 |
3.0 |
border-color |
7.0 |
border-style |
8.0 |
border-width |
4.0 |
border-top |
5.5 |
border-right |
border-bottom |
border-left |
CSS3 |
border-radius |
9.0[t 1] |
2.0[g 7] |
533[w 9] |
Experimental |
2.5 |
6.0 |
border-image |
No |
Experimental[g 8] |
Experimental |
No |
2.5 |
No |
border-image-source |
Nightly build[g 9] |
No |
No |
border-image-slice |
border-image-width |
border-image-outside |
border-image-repeat |
box-shadow |
9.0[t 6] |
2.0[g 10] |
Yes[w 10] |
No |
2.5 |
No |
box-decoration-break |
No |
No[g 11] |
No[w 11] |
No |
2.7[p 1] |
No |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Line Layout[spec 4] |
CSS2 |
line-height |
4.0 |
1.0 |
85 |
Yes |
1.0 |
5.0 |
vertical-align |
8.0 |
1.0 |
85 |
Yes |
6.0 |
Positioning |
CSS2 |
position |
7.0 |
1.0 |
85 |
Yes |
1.0 |
5.0 |
top |
8.0 |
1.0 |
85 |
Yes |
6.0 |
right |
8.0 |
1.0 |
85 |
Yes |
6.0 |
bottom |
8.0 |
1.0 |
85 |
Yes |
6.0 |
left |
8.0 |
1.0 |
85 |
Yes |
6.0 |
z-index |
8.0 |
1.9 |
85 |
Yes |
6.0 |
Generated and Replaced Content[spec 5] |
CSS2 |
quotes |
8.0 |
Yes |
Nightly build[w 12] |
3.4 |
1.0 |
No |
content |
9.0[t 7] |
1.9 |
Partial |
Yes |
2.7 |
Partial |
counter-increment |
8.0 |
1.8 |
525 |
3.4 |
1.0 |
5.0 |
counter-reset |
8.0 |
1.8 |
525 |
3.4 |
5.0 |
Lists[spec 6] |
CSS2 |
list-style |
4.0 |
1.0 |
85 |
Yes |
1.0 |
6.0 |
list-style-image |
4.0 |
1.0 |
85 |
Yes |
6.0 |
list-style-position |
4.0 |
1.0 |
85 |
Yes |
6.0 |
list-style-type |
8.0 |
1.0 |
85 |
3.4 |
Partial |
Colors[spec 7] |
CSS2 |
color |
3.0 |
1.0 |
85 |
Yes |
1.0 |
5.0 |
CSS3 |
opacity |
9.0[t 1] |
1.7 |
125 |
4.0 |
2.0 |
6.0 |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Backgrounds[spec 3] |
CSS2 |
background |
4.0 |
1.0 |
85 |
Yes |
1.0 |
6.0 |
background-attachment |
7.0 |
5.0 |
background-color |
4.0 |
3.1 |
background-image |
8.0 |
6.0 |
background-position |
8.0 |
3.1 |
background-repeat |
4.0 |
3.1 |
CSS3 |
background (multiple) |
9.0[t 1] |
1.9.2 |
312 |
3.5 |
2.5 |
No |
background-clip |
2.0[g 12] |
Yes[w 13] |
Experimental |
background-origin |
background-size |
Yes[w 14] |
Fonts[spec 8] |
CSS2 |
font |
4.0 |
1.0 |
85 |
Yes |
Incorrect |
Yes |
font-family |
4.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
font-size |
3.0 |
1.0 |
85 |
Yes |
3.1 |
font-style |
4.0 |
1.0 |
85 |
Yes |
Yes |
font-variant |
4.0 |
1.0 |
125 |
Yes |
Yes |
font-weight |
8.0 |
Partial |
Partial |
Yes |
Incorrect |
Yes |
CSS3 |
font-size-adjust |
Platform Preview |
1.9 |
No[w 15] |
No |
No |
No |
font-stretch |
9.0[t 1] |
9.0[g 13] |
No[w 16] |
No |
No |
6.0 |
font-feature-settings |
No |
Experimental |
No[w 17] |
No |
No |
No |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Text[spec 9] |
CSS2 |
text-align |
4.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
text-decoration |
Yes |
1.0 |
85 |
Yes |
3.1 |
text-indent |
3.0 |
1.0 |
85 |
Yes |
Yes |
text-transform |
4.0 |
1.0 |
85 |
Yes |
6.0 |
letter-spacing |
4.0 |
1.0 |
85 |
Yes |
5.0 |
word-spacing |
8.0 |
1.0 |
85 |
Yes |
5.0 |
white-space |
8.0 |
1.9.1 |
522 |
Yes |
2.1 |
6.0 |
CSS3 |
text-shadow |
Platform Preview |
1.9.1 |
Yes |
3.4 |
2.1 |
No |
text-overflow |
Partial |
7.0[g 14] |
Partial |
3.5.6 |
Experimental (Nightly)[p 2] |
No |
word-break |
Partial |
No[g 15] |
No |
No |
No |
No |
hyphens |
Platform Preview |
6.0[g 16] |
Nightly build |
No |
No |
No |
hyphenate-characters |
No |
No |
No |
No |
No |
No |
hyphenate-limit-zone |
Platform Preview |
hyphenate-limit-chars |
Platform Preview |
hyphenate-limit-word |
No |
hyphenate-limit-lines |
Platform Preview |
hyphenate-limit-last |
No |
hyphenate-resource |
No |
text-wrap |
No |
No[g 17] |
No |
No |
No |
No |
word-wrap |
5.0 |
1.9.1 |
85 |
4.3 |
2.5 |
No |
text-align-last |
Partial |
No[g 18] |
No |
No |
No |
Partial |
text-align-first |
No |
No |
No |
No |
No |
No |
text-justify |
5.5 |
No[g 19] |
No |
No |
No |
6.0 |
punctuation-trim |
No |
No |
No |
No |
No |
No |
text-emphasis |
No |
No |
No |
No |
No |
No |
text-outline |
No |
No[g 20] |
Experimental[w 18][w 19] |
No |
No |
No |
hanging-punctuation |
No |
No |
No[w 20] |
No |
No |
No |
text-decoration-style |
No |
6.0[g 21][g 22] |
No |
No |
No |
No |
text-decoration-color |
No |
No |
No |
No |
No |
text-decoration-line |
No |
No |
No |
No |
No |
text-decoration-skip |
No |
No |
No |
No |
No |
No |
text-underline-position |
No |
No |
No |
No |
No |
No |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Writing Modes[spec 10] |
CSS2 |
direction |
5.0 |
1.0 |
85 |
Yes |
1.0 |
7.0 |
unicode-bidi |
5.0 |
1.0 |
525 |
Yes |
7.0 |
CSS3 |
writing-mode |
6.0[t 8] |
No[g 23] |
Nightly Build[w 21] |
No |
No |
No |
text-combine |
No |
No |
No[w 22] |
No |
No |
No |
Tables |
CSS2 |
border-collapse |
8.0 |
1.0 |
125 |
Yes |
1.0 |
5.1 |
border-spacing |
8.0 |
1.0 |
125 |
Yes |
6.0 |
caption-side |
8.0 |
1.4 |
85 |
Yes |
5.0 |
empty-cells |
8.0 |
1.0 |
125 |
Yes |
5.0 |
table-layout |
5.0 |
1.0 |
85 |
Yes |
6.0 |
User interface[spec 11] |
CSS2 |
cursor |
5.5 |
1.8 |
125 |
Yes |
Partial |
Yes |
outline |
8.0 |
1.8 |
125 |
Yes |
1.0 |
No |
outline-color |
8.0 |
1.8 |
125 |
Yes |
No |
outline-style |
8.0 |
1.8 |
125 |
Yes |
No |
outline-width |
8.0 |
1.8 |
125 |
Yes |
No |
CSS3 |
outline-offset |
No |
1.8 |
125 |
3.5 |
2.1 |
No |
box-sizing |
8.0 |
Experimental[g 24] |
Yes[w 23] |
3.3.2 |
1.0 |
7.0 |
resize |
No |
2.0[g 25] |
525 |
No |
No |
No |
appearance |
No |
Experimental |
Experimental |
No |
No |
No |
icon |
No |
No |
No |
No |
No |
No |
nav-index |
No |
No |
No |
No |
2.1 |
No |
nav-up |
No |
No |
No |
No |
No |
nav-right |
No |
No |
No |
No |
No |
nav-down |
No |
No |
No |
No |
No |
nav-left |
No |
No |
No |
No |
No |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Paged media[spec 12] |
CSS2 |
page-break-before |
4.0 |
Partial |
Partial |
3.5 |
1.0 |
6.0 |
page-break-after |
6.0 |
page-break-inside |
8.0 |
No[g 26] |
312 |
6.0 |
orphans |
No[g 27] |
6.0 |
widows |
6.0 |
CSS3 |
page |
No |
No |
No |
No |
No |
Yes |
size |
No |
No |
No[w 24] |
No |
1.0 |
6.0 |
image-orientation |
No |
No |
No |
No |
No |
No |
object-fit |
No |
No[g 28] |
No |
No |
2.7[p 3] |
No |
object-position |
No |
No |
No |
No |
No |
Speech[spec 13] |
CSS3 |
cue |
No |
No[g 29] |
No |
No |
1.0 |
No |
cue-after |
cue-before |
pause |
pause-after |
pause-before |
speak |
Nightly build[w 25] |
voice-family |
No |
voice-balance |
Experimental |
voice-duration |
voice-pitch |
voice-pitch-range |
voice-rate |
voice-stress |
voice-volume |
interpret-as |
phonemes |
rest |
No |
rest-after |
rest-before |
mark |
mark-after |
mark-before |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Media Queries[spec 14] |
CSS3 |
width |
9.0[t 1] |
1.9.1 |
525 |
4.1 |
2.0 |
No |
height |
device-width |
device-height |
device-aspect-ratio |
color |
2.5 |
color-index |
monochrome |
resolution |
No |
orientation |
4.2.1 |
No |
aspect-ratio |
2.1 |
grid |
No |
4.1 |
2.5 |
scan |
Ruby characters[spec 15] |
CSS3 |
ruby-position |
5.0 |
No[g 30] |
No |
No |
No |
No |
ruby-align |
ruby-overhang |
ruby-span |
No |
Multi-column Layout[spec 16] |
CSS3 |
column-count |
Platform Preview |
Experimental[g 31] |
Experimental |
No |
2.8[p 4] |
Yes |
column-width |
column-gap |
column-rule |
columns |
9.0[g 32] |
break-before |
No |
No[g 33] |
Experimental[w 26] |
6.0 |
break-after |
break-inside |
No[w 27] |
column-fill |
Platform Preview |
12.0[g 34] |
No |
column-span |
No[g 35] |
Experimental[w 28] |
No |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Grid layout[spec 17] |
CSS3 |
Grid |
Platform Preview[g 36] |
No[g 37] |
No[w 29] |
No |
No |
No |
grid-rows |
grid-columns |
grid-row |
grid-column |
grid-cell-stacking |
grid-template |
grid-column-span |
grid-row-span |
grid-column-sizing |
grid-row-sizing |
grid-flow |
grid-column-align |
grid-row-align |
grid-layer |
Animation[spec 18] |
CSS3 |
animation |
Platform Preview |
Experimental[g 38] |
Experimental |
No |
No |
No |
animation-delay |
animation-direction |
animation-duration |
animation-iteration-count |
animation-name |
animation-play-state |
animation-timing-function |
2D Transforms[spec 19] |
CSS3 |
transform |
Experimental[t 1] |
Experimental |
Experimental |
No |
Experimental |
No |
transform-origin |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
3D Transforms[spec 20] |
CSS3 |
transform |
Platform Preview |
Nightly build[g 39] |
Experimental |
No |
No |
No |
transform-origin |
transform-style |
perspective |
perspective-origin |
backface-visibility |
Transitions[spec 21] |
CSS3 |
transition-property |
Platform Preview |
Experimental[g 40] |
Experimental |
No |
Experimental |
No |
transition-duration |
transition-timing-function |
transition-delay |
transition |
Flexible Box Layout[spec 22] |
CSS3 |
flex-align |
Platform Preview |
No[g 41] |
Experimental |
No |
No |
No |
flex-direction |
No |
No |
flex-flow |
Platform Preview |
Experimental |
flex-line-pack |
flex-order |
flex-pack |
flex-wrap |
No |
No |
Marquee[spec 23] |
CSS3 |
marquee-direction |
No |
No |
Experimental[w 30] |
No |
No |
No |
marquee-play-count |
marquee-speed |
marquee-style |
overflow-style |
No |
Regions[spec 24] |
CSS3 |
flow-into |
Platform Preview |
No[g 42] |
Nightly build |
No |
No |
No |
flow-from |
region-overflow |
break-before |
break-after |
break-inside |
Exclusions and Shapes[spec 25] |
CSS3 |
wrap |
Platform Preview |
No[g 43] |
Nightly build |
No |
No |
No |
wrap-flow |
wrap-margin |
wrap-padding |
wrap-through |
shape-outside |
shape-inside |
shape-image-threshold |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Trident property notes
- margin —
inherit
inherits the computation and recomputes it instead of inheriting the computed value.[t 9]
- display — Prior to 7.0, only
none
, block
, inline
, table-header-group
, and table-footer-group
are fully supported. Prior to 8.0, table
are not supported, while inline-block
is only supported on elements that are naturally inline.
- overflow — Prior to 7.0,
overflow: visible;
is incorrectly supported. In 8.0, scroll
makes the element's height equal to its max-height
even if the content isn't that tall.[t 10] This has been fixed in IE9.
- visibility — Prior to 8.0,
visibility: collapse;
is not supported. In 8.0, inline elements with visibility: visible;
inside block elements with visibility: hidden;
are not visible.[t 11]
- content — In 8.0, computed
attr()
values are not updated when the attribute changes.[t 12]
- border-color — Prior to 7.0,
transparent
is not supported.
- border-style — Prior to 8.0,
hidden
is not supported.
- border-style — Prior to 7.0,
dotted
is rendered as dashed
.
- box-shadow — Trident 9.0 renders box-shadow blur value at about half the declared value. Prior to 9.0, trident supports similar functionality since 5.5 using the proprietary Shadow[t 13] and DropShadow[t 14] filters.
- position — Prior to 7.0, fixed positioning was not supported. 7.0 and later support it in standards-compliant mode only.
- z-index — Prior to 8.0,
z-index
is only partially supported.[t 15] In 8.0, floating point values are accepted in addition to integers.[t 16]
- list-style-type — Prior to 8.0,
armenian
, decimal-leading-zero
, georgian
, lower-greek
, lower-latin
, upper-latin
are not supported.
- opacity — Prior to 9.0, Trident supported a proprietary alternative.[t 17]
- background-image — Prior to 8.0, background images are badly positioned in some cases.[t 18][t 19]
- background-attachment — Prior to 7.0,
fixed
was allowed on the body
element only.
- background-position — Prior to 8.0, fixed positioning is not supported.
- font-weight — Prior to 8.0, incorrect rendering when value is 600.[t 20]
- text-align — In 8.0,
text-align
isn't inherited by :before
and :after
pseudo-elements.[t 21]
- white-space — Prior to 6.0,
pre
is not supported. Prior to 8.0, white-space
is only partially supported; pre-line
and pre-wrap
are not supported.[t 22]
- cursor — Does not fail on non-prefixed vendor extensions.
Gecko property notes
- z-index — Negatives values are badly supported prior to 1.9.
- content —
none
value is unsupported prior to 1.9. This property also fails on any normal (non-pseudo-) elements, which it must support according to the CSS3 "Generated and Replaced Content Module" spec.
- background-position — Versions prior to 1.7 implement the CSS2 syntax, not the proposed CSS2.1 expanded syntax.
- font-size-adjust — Prior to 1.9, supported on Windows only.
- font-weight — Only Regular and Bold weights get used, even if Light or Heavy/Black faces are installed, unless using DirectWrite in Gecko 2.0 on Windows 7 or Windows Vista.
- white-space —
pre-line
is not supported prior to 1.9.1. Prior to 1.9, pre-wrap
was only supported experimentally as -moz-pre-wrap
.
- visibility —
collapse
is unsupported prior to 1.8.
- border-radius — Prior to 1.9.1, border curves are circular, not elliptical as specified by the current CSS3 draft. Short-cut definitions for
border-radius
read "tl tr br bl" instead of the W3C's "tr br bl tl". When the border style is dotted or dashed, curves are rendered as solid instead.[g 44]
- page-break-before; page-break-after — Only the
always
and auto
values are supported.
WebKit property notes
- font — The system font keywords that allow designers to tailor presentation to the user's operating system environment are unsupported.
- font-weight — Only Regular and Bold weights get used, even if Light or Heavy/Black faces are installed.
- page-break-before; page-break-after — Only the
always
and auto
values are supported.
- white-space — Prior to 522,
pre-line
and pre-wrap
are unsupported.
- visibility —
collapse
is unsupported prior to 522. Its implementation has the same effect as hidden
and is therefore not compliant.[w 31]
- content — The
none
, open-quote
, close-quote
, no-open-quote
, no-close-quote
and normal
values is unsupported. This property also fails on any normal (non-pseudo-) elements, which it must support according to the CSS3 "Generated and Replaced Content Module" spec.
- font-size — The
font-size
property does not always accept the value 0, in "font-size: 0px" the text is still visible.
KHTML property notes
- overflow — Values
scroll
and auto
are unsupported.
- page-break-before; page-break-after — Before 3.5 only the
always
and auto
values were supported.
- visibility — All properties are supported, but the implementation of
collapse
has the same effect as hidden
and is therefore not compliant.
Presto property notes
- counter-increment, counter-reset — Implemented the algorithm in REC CSS2.
- background-position — Presto versions prior to Opera 8.0 implement the CSS2 syntax, not the proposed CSS2.1 expanded syntax.
- font-weight — Incorrect rendering when value is 600. Renders the text in a compatibility mode for websites made for Trident.
- visibility — Prior to 2.5, the value
collapse
was unsupported in table columns. On rows, it had the same effect as hidden
and was therefore not compliant.
- cursor —
cursor
is ignored with dynamic pseudo-classes and custom cursors are unsupported.
- content — Prior to 2.7, the
none
value was unsupported.[p 5]
- font —
inherit
should not be allowed together with a font-size value. This should not be parsed, but it's currently done in Opera.
Prince XML property notes
- visibility — The value
collapse
is unsupported.[r 1]
- list-style — The values
armenian
and georgian
are unsupported.[r 1]
- content — The values
open-quote
and close-quote
are unsupported.[r 1]
Values and units
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
Numbers[spec 26] |
CSS2 |
<number> |
A floating-point number |
3.0 |
1.0 |
85 |
Yes |
1.0 |
6.0 |
<length> |
<number> followed by units |
<percentage> |
<number> followed by % |
<integer> |
An integer |
CSS3 |
<angle> |
<number> angle-unit |
9.0[t 1] |
Partial |
Partial |
Partial |
Partial |
No |
<time> |
<number> time-unit |
2.0[g 40] |
Yes |
Yes |
2.5 |
<frequency> |
<number> frequency-unit |
No |
No |
No |
<fraction> |
Remaining space |
No |
No |
Strings |
CSS2 |
<string> |
String |
3.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
\code |
Unicode escapes |
6.0 |
Shapes |
CSS2 |
rect() |
A rectangle |
8.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
Functions |
CSS2 |
url() |
Uniform Resource Identifier |
3.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
counter() |
|
8.0 |
attr() |
Attribute identifier |
CSS3 |
calc() |
|
9.0[t 1] |
2.0 (Experimental)[g 45] |
No[w 32] |
No |
No |
No |
Colors |
CSS2 |
HTML4 color keywords |
16 predefined web colors |
3.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
#rrggbb or #rgb |
Hexadecimal notation |
rgb(r, g, b) |
RGB notation |
4.0 |
system colors [spec 27] |
28 predefined system colors |
3.0 |
CSS3 |
SVG color keywords |
|
8.0 |
Yes |
Yes |
Yes |
Yes |
? |
currentColor |
The value of the color property. |
9.0[t 1] |
1.8 |
528 |
Yes |
2.1 |
? |
rgba(r, g, b, a) |
RGBA notation |
1.9 |
525 |
4.0 |
2.2 |
6.0 |
hsl(h, s, l) |
HSL notation |
1.5 |
3.5.5 |
2.1 |
No |
hsla(h, s, l, a) |
HSLA notation |
1.9 |
3.5.5 |
2.2 |
transparent |
Full transparency |
9.0 |
1.9 |
4.0 |
Partial |
Partial |
Image values[spec 28] |
CSS2 |
<url> |
Image types |
3.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
CSS3 |
<sprite> |
No |
No |
No |
No |
No |
No |
<image-list> |
No |
No |
No |
<linear-gradient> |
Platform Preview |
Experimental |
Experimental[w 33] |
Experimental |
<radial-gradient> |
linear-gradient() |
Color gradients |
radial-gradient() |
repeating-linear-gradient() |
repeating-radial-gradient() |
Keywords |
CSS2 |
auto |
Automatically calculated |
6.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
inherit |
Inherited from the parent |
8.0 |
CSS3 |
initial |
|
No |
Experimental |
125 |
No |
No |
No |
Units |
CSS2 |
px |
Pixel |
3.0 |
1.0 |
85 |
Yes |
1.0 |
Yes |
pt |
Point |
pc |
Pica |
cm |
Centimetre |
mm |
Millimetre |
in |
inch |
em |
em |
ex |
ex |
% |
Percentage |
CSS3 |
deg |
Degree |
9.0[t 1] |
1.9.1 |
Yes |
Yes |
2.5 |
No |
grad |
Grad |
rad |
Radian |
turn |
turn |
No |
No |
No |
No |
ms |
Millisecond |
2.0[g 46] |
Yes |
Yes |
2.5 |
s |
Second |
Hz |
Hertz |
No |
No |
No |
kHz |
Kilohertz |
dpi |
Dots per inch |
1.9.1 |
No |
4.1 |
2.5 |
dpcm |
Dots per centimetre |
dppx |
Dots per pixel-unit |
No |
No |
? |
No |
gd |
Cells in the layout-grid |
No |
No |
No |
No |
fr |
Remaining space in a series of length values |
No |
No |
No |
No |
rem |
the font size of the root element |
9.0[t 1] |
1.9.2 |
No |
No |
No |
vw |
the viewport's width |
No[g 47] |
No[w 34] |
No |
No |
vh |
the viewport's height |
vm |
the viewport's height or width, whichever is smaller of the two |
ch |
the width of the "0" (ZERO, U+0030) glyph found in the font for the font size used to render. |
1.9.1 |
No |
No |
No |
|
Trident |
Gecko |
WebKit |
KHTML |
Presto |
Prince XML |
General value and unit notes
- transparent —
CSS1 introduced the ‘transparent’ value for the background-color property. CSS2 allowed border-color to also accept the ‘transparent’ value. The Open eBook(tm) Publication Structure 1.0.1 [OEB101] extended the ‘color’ property to also accept the ‘transparent’ keyword. CSS3 extends the color value to include the ‘transparent’ keyword to allow its use with all properties that accept a <color> value. This simplifies the definition of those properties in CSS3.
- <angle> — The
turn
unit is unsupported.
Trident value and unit notes
- rect() — Prior to 8.0,
rect()
was not supported with the correct syntax using commas.
- auto — In quirks mode (IE5 emulation mode),
auto
does not work for margin
s, except table elements.
- transparent — In 7.0 and 8.0, using
transparent
in the color
property will render the text as black.
- transparent — Prior to 7.0,
transparent
is not supported on borders (shows as solid black) and is ignored on PNG images.
Gecko value and unit notes
- <ch> — Prior to version 1.9.1, used the width of the "M" glyph instead of the width of the "0" glyph.[g 48]
Presto value and unit notes
- <number> — Prior to 2.1, there existed a quantization error for values greater than 20.47 (not limited to em, try any non-pixel units).[p 6]
- transparent — Keyword is ignored when used with the outline-color property. Prior to version 2.2, it was also ignored when used with the color and text-shadow properties.
General notes
Trident general notes
-ms-
— All experimental properties are prefixed with "-ms-", e.g. -ms-interpolation-mode
instead of interpolation-mode
.
Gecko general notes
-moz-
— All experimental selectors, properties and values are prefixed with "-moz-", e.g. ::-moz-selection
instead of ::selection
.
WebKit general notes
-webkit-
— All experimental selectors, properties and values are prefixed with "-webkit-", e.g. -webkit-box-shadow
instead of box-shadow
.
KHTML general notes
-khtml-
— All experimental selectors, properties and values are prefixed with "-khtml-", e.g. -khtml-opacity
instead of opacity
.
Presto general notes
-xv-
— All new selectors, properties and values introduced by CSS3 Speech Module are prefixed with "-xv-" (but not found in CSS2 aural style sheets), e.g. -xv-voice-rate
instead of voice-rate
.
-o-
— All experimental properties are prefixed with "-o-", e.g. -o-transition-property
instead of transition-property
.
DOM equivalents to vendor-specific styles
- The DOM properties corresponding to vendor-specific experimental CSS properties are prefixed with the vendor-prefix, without any hyphens, and with first letters capitalised, e.g.
element.style.MozBorderRadius
corresponding to the -moz-border-radius
property, or element.style.OTransform
corresponding to the -o-transform
property. The exception is Internet Explorer which uses a lower-case prefix, e.g. element.style.msTransform
.
References
Specifications
- ^ Selectors Level 3, W3C, http://www.w3.org/TR/css3-selectors/
- ^ CSS basic box model, W3C, http://www.w3.org/TR/css3-box/
- ^ a b CSS Backgrounds and Borders Module Level 3, W3C, http://www.w3.org/TR/css3-background/
- ^ CSS3 module: line, W3C, http://www.w3.org/TR/css3-linebox/
- ^ CSS3 Generated and Replaced Content Module, W3C, http://www.w3.org/TR/css3-content/
- ^ CSS3 module: Lists, W3C, http://www.w3.org/TR/css3-lists/
- ^ CSS Color Module Level 3, W3C, http://www.w3.org/TR/css3-color/
- ^ CSS Fonts Module Level 3, W3C, http://www.w3.org/TR/css3-fonts/
- ^ CSS Text Level 3, W3C, http://www.w3.org/TR/css3-text/
- ^ CSS Writing Modes Module Level 3, W3C, http://www.w3.org/TR/css3-writing-modes/
- ^ CSS3 Basic User Interface Module, W3C, http://www.w3.org/TR/css3-ui/
- ^ CSS3 Module: Paged Media, W3C, http://www.w3.org/TR/css3-page/
- ^ CSS3 Speech Module, W3C, http://www.w3.org/TR/css3-speech/
- ^ Media Queries, W3C, http://www.w3.org/TR/css3-mediaqueries/
- ^ CSS3 Ruby Module, W3C, http://www.w3.org/TR/css3-ruby/
- ^ CSS Multi-column Layout Module, W3C, http://www.w3.org/TR/css3-multicol/
- ^ Grid Layout, W3C, http://www.w3.org/TR/css3-grid-layout/
- ^ CSS Animations Module Level 3, W3C, http://www.w3.org/TR/css3-animations/
- ^ CSS 2D Transforms Module Level 3, W3C, http://www.w3.org/TR/css3-2d-transforms/
- ^ CSS 3D Transforms Module Level 3, W3C, http://www.w3.org/TR/css3-3d-transforms/
- ^ CSS Transitions Module Level 3, W3C, http://www.w3.org/TR/css3-transitions/
- ^ Flexible Box Layout, W3C, http://dev.w3.org/csswg/css3-flexbox/
- ^ CSS Marquee Module Level 3, W3C, http://www.w3.org/TR/css3-marquee/
- ^ CSS Regions Module, W3C, http://www.w3.org/TR/css3-regions/
- ^ CSS exclusions and shapes, W3C, http://dev.w3.org/csswg/css3-exclusions/
- ^ CSS3 Values and Units, W3C, http://www.w3.org/TR/css3-values/
- ^ System Colors, W3C, http://www.w3.org/TR/CSS21/ui.html#system-colors
- ^ CSS Image Values Module Level 3, W3C, http://dev.w3.org/csswg/css3-images/
Trident references
- ^ a b c d e f g h i j k l m Internet Explorer Platform Preview Guide for Developers, Microsoft, http://msdn.microsoft.com/en-us/ie/ff468705.aspx
- ^ Hopkins, James, Attribute selector (which matches the attribute, 'colspan' for TD and TH elements) matches every TD and TH element, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=446817
- ^ Hammond, David, Comment on "IE 8 CSS 2.1 support results", http://www.webdevout.net/tidings/2009/03/23/ie-8-css-21-support-results/#comment-4168
- ^ :first-letter Ignore Bug, hasLayout.net, http://haslayout.net/css/-first-letter-Ignore-Bug
- ^ Hopkins, James, Declaration which includes !important keyword is ignored when used within a :first-letter or :first-line rule, https://connect.microsoft.com/IE/feedback/details/478138/declaration-which-includes-important-keyword-is-ignored-when-used-within-a-first-letter-or-first-line-rule
- ^ Box-shadow, one of CSS3′s best new features - Browser's support (including IE9), WEBFLUX, http://www.css3.info/preview/box-shadow
- ^ content property doesn't return the value of an attribute when attribute is dynamically, http://idreamincode.co.uk/wp-content/uploads/2008/IE8Bugs/final-release/contentdynamic.html
- ^ CSS 3 Text: A Tale of writing-mode Woe, http://www.zachleat.com/web/2010/02/12/css3-text-writing-mode/http://www.zachleat.com/web/2010/02/12/css3-text-writing-mode/
- ^ Talbot, Inherited margin with inherit keyword: the computed value's parent should be inherited, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=344787
- ^ Groot, Sven, Overflow: scroll causes element to always have its max-height, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=408759
- ^ Hopkins, James, visibility:visible applied to inline element doesn’t override inherited visibility:hidden value applied to it’s block-level parent, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=442805
- ^ Content: attr(x) isn't updated when the attribute's value change, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=434925
- ^ Shadow Filter, Microsoft, http://msdn.microsoft.com/en-us/library/ms533086(VS.85).aspx
- ^ DropShadow Filter, Microsoft, http://msdn.microsoft.com/en-us/library/ms532985(VS.85).aspx
- ^ Positioning, http://msdn.microsoft.com/en-us/library/cc351024(VS.85).aspx#positioning
- ^ Hopkins, James, Illegal parsing of a z-index decimal value, instead of an integer, https://connect.microsoft.com/IE/feedback/details/386914/illegal-parsing-of-a-z-index-decimal-value-instead-of-an-integer
- ^ Alpha Filter, Microsoft, http://msdn.microsoft.com/en-us/library/ms532967(VS.85).aspx
- ^ IE7-/Escaping Background Image Bug - Demo 1, http://css-class.com/test/bugs/ie/escaping-background-image-bug1.htm
- ^ IE7-/Escaping Background Image Bug - Demo 2, http://css-class.com/test/bugs/ie/escaping-background-image-bug2.htm
- ^ Koch, Peter-Paul, IE Windows and Opera - font-weight: 600 vs. bold, QuirksMode, http://www.quirksmode.org/css/tests/iewin_fontweight.html
- ^ Hopkins, James, 'text-align' value isn't inherited by ':before' and ':after' pseudo elements, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=454985
- ^ Font and Text, Microsoft, http://msdn.microsoft.com/en-us/library/cc351024#font
Gecko references
- ^ a b Bug 115199 - @page in CSS2 not implemented, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=115199
- ^ Bug 418039 - CSS parent (has-child) and ancestor (has-descendant) selectors (:subject), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=418039
- ^ Bug 506554 - Implement the CSS3 pseudo-classes :required and :optional, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=506554
- ^ Bug 312971 - Support :read-only and :read-write pseudoclasses, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=312971
- ^ Bug 509958 - Remove the -moz prefix from ::selection, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=509958
- ^ Bug 237119 - property 'display' is ignored for generated content, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=237119
- ^ Bug 451134 - change -moz-border-radius* properties to css3-background names, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=451134
- ^ Bug 378217 - implement css3 'border-image' property, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=378217
- ^ Bug 497995 - Implement border-image revisions in latest css3-background, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=497995
- ^ Bug 590039 - fix blur radius computation and rename -moz-box-shadow to box-shadow, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=590039
- ^ Bug 613659 - implement box-decoration-break: Left/right part of a box-shadow should only be drawn on the first/last continuation of an inline box, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=613659
- ^ Bug 549809 - Rename background-origin and background-clip properties and values to match css3-background, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=549809
- ^ Bug 3512 - (font-stretch) Implement font-stretch property, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=3512
- ^ Bug 312156 - implement text-overflow: ellipsis from CSS3 text, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=312156
- ^ Bug 249159 - implement 'word-break' properties of CSS3, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=249159
- ^ hyphens - MDN Docs, Mozilla, https://developer.mozilla.org/en/CSS/hyphens (Only English)
- ^ Bug 654994 - implement css3-text 'text-space-collapse' and 'text-wrap', Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=654994
- ^ Bug 536557 - Implement CSS3 text-align-last, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=536557
- ^ Bug 276079 - Implement text-justify property(but 'auto', 'inter-word', 'inter-ideograph' and 'distribute' only), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=276079
- ^ Bug 470547 - CSS3 text-outline not supported, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=470547
- ^ Bug 59109 - implement CSS3 text module's text-decoration-style and text-decoration-color, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=59109
- ^ Firefox 6 for developers, Mozilla, https://developer.mozilla.org/en/Firefox_6_for_developers
- ^ Bug 145503 - (writing-mode) CSS3 writing-mode (vertical text), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=145503
- ^ Implement 'box-sizing' (dropping the -moz- prefix), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=243412
- ^ Bug 553576 - Implement css resize property behaviour, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=553576
- ^ Bug 132035 - Implement missing page-break-* CSS2.1 features, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=132035
- ^ Bug 137367 - Implement orphans and widows, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=137367
- ^ Bug 624647 - [CSS Implement object-fit], Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=624647
- ^ Bug 47159 - Support css3-speech (previously Aural Style Sheet) properties in getComputedStyle, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=47159
- ^ Bug 256274 - Implement CSS ruby module, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=256274
- ^ Bug 684062 - Compare spec and implement CSS multi-column support, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=684062
- ^ Bug 446569 - Implement CSS3 columns shorthand, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=446569
- ^ Bug 549114 - Support Column Breaks, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=549114
- ^ Bug 695222 - Implement column-fill, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=695222
- ^ Bug 616436 - column-span not implemented (css3 multicolumn), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=616436
- ^ Native HTML5: First IE10 Platform Preview Available for Download, Microsoft, http://blogs.msdn.com/b/ie/archive/2011/04/12/native-html5-first-ie10-platform-preview-available-for-download.aspx
- ^ Bug 616605 - CSS Grid Layout, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=616605
- ^ Bug 435442 - Implement Webkit's CSS Animation proposal, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=435442
- ^ Bug 505115 - CSS3 3D-Transforms, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=505115
- ^ a b Bug 435441 - get CSS transitions complete enough to ship, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=537142
- ^ Bug 666041 - (css3-flexbox) CSS Flexbox Layout Level 3, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=666041
- ^ Bug 674802 - implement CSS3 Regions, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=674802
- ^ Bug 674804 - implement CSS3 Exclusions, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=674804
- ^ Bug 382721 - Dotted/dashed -moz-border-radiused corners are rendered as solid, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=382721
- ^ Bug 363249 - implement css3-values calc(), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=363249
- ^ Bug 435441 - Implement Webkit's CSS Transitions proposal, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=435441
- ^ Bug 503720 - Implement vw/vh/vm (viewport sizes) from CSS 3 Values and Units, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=503720
- ^ Bug 282126 - What to do about the 'ch' length unit? (Mozilla vendor specific), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=282126
Webkit references
- ^ Bug 35329 - Enhance CSS parser for Paged Media (Iteration 1), WebKit, https://bugs.webkit.org/show_bug.cgi?id=35329
- ^ Bug 38731 - Make CSS Parser properly handle only-for-pages pseudo-classes, WebKit, https://bugs.webkit.org/show_bug.cgi?id=38731
- ^ Bug 27458 - Support :default HTML5 CSS selector, Webkit, https://bugs.webkit.org/show_bug.cgi?id=27458
- ^ Bug 27357 - Support :valid/:invalid CSS selectors, Webkit, https://bugs.webkit.org/show_bug.cgi?id=27357
- ^ Bug 29071 - Support for :in-range and :out-of-range CSS selectors, Webkit, https://bugs.webkit.org/show_bug.cgi?id=29071
- ^ Bug 25551 - Support for HTML5 Forms "required" attribute, Webkit, https://bugs.webkit.org/show_bug.cgi?id=25551
- ^ Bug 3409 - CSS1: Safari ignores "text-transform" attribute in "first-line" CSS rules, Webkit, https://bugs.webkit.org/show_bug.cgi?id=3409
- ^ Bug 23209 - [RFE] CSS Generated Content does not transition, Webkit, https://bugs.webkit.org/show_bug.cgi?id=23209
- ^ Bug 27578 - Drop the prefix from the border-radius properties, Webkit, https://bugs.webkit.org/show_bug.cgi?id=27578
- ^ Bug 51448 - Support unprefixed box-shadow property, WebKit, https://bugs.webkit.org/show_bug.cgi?id=51448
- ^ Bug 27576 - [CSS3 Backgrounds and Borders Implement box-decoration-break], WebKit, https://bugs.webkit.org/show_bug.cgi?id=27576
- ^ Bug 3234 - CSS2: Implement better quote support (for the q tag), Webkit, https://bugs.webkit.org/show_bug.cgi?id=3234
- ^ Bug 27562 - Drop the prefixes from background-clip and background-origin, WebKit, https://bugs.webkit.org/show_bug.cgi?id=27562
- ^ [CSS3 Backgrounds and Borders] Drop the prefix from background-size, WebKit, https://bugs.webkit.org/show_bug.cgi?id=27575
- ^ Bug 15257 - Support CSS 3 font-size-adjust, Webkit, https://bugs.webkit.org/show_bug.cgi?id=15257
- ^ Bug 12530 - CSS3: Support the font-stretch property, Webkit, https://bugs.webkit.org/show_bug.cgi?id=12530
- ^ Bug 63796 - Master: Support CSS3 font feature properties, Webkit, https://bugs.webkit.org/show_bug.cgi?id=63796
- ^ Hyatt, Dave (2006-12-21), Introducing Text-Stroke, Surfin’ Safari, http://webkit.org/blog/85/introducing-text-stroke/
- ^ Bug 9475 - CSS3: Add support for font-effect: outline., WebKit, https://bugs.webkit.org/show_bug.cgi?id=9475
- ^ Bug 18109 - Implement hanging punctuation, Webkit, https://bugs.webkit.org/show_bug.cgi?id=18109
- ^ Bug 46123 - Implement writing-mode support for all of layout (master bug), WebKit, https://bugs.webkit.org/show_bug.cgi?id=46123
- ^ Bug 48538 - Support the text-combine CSS property, WebKit, https://bugs.webkit.org/show_bug.cgi?id=48538
- ^ Bug 36713 - Support box-sizing without the vendor prefix, WebKit, https://bugs.webkit.org/show_bug.cgi?id=36713
- ^ Bug 10894 - CSS "size" property is not supported, Webkit, https://bugs.webkit.org/show_bug.cgi?id=10894
- ^ Bug 46827 - AX: implement CSS3 Speech "speak", WebKit, https://bugs.webkit.org/show_bug.cgi?id=46827
- ^ Bug 15552 - Support CSS3 column-break-before and column-break-after, WebKit, https://bugs.webkit.org/show_bug.cgi?id=15552
- ^ Bug 39498 - [CSS3 Multi-column] Floating elements are rendered below the columns, WebKit, https://bugs.webkit.org/show_bug.cgi?id=39498#c7
- ^ Bug 15550 - WebKit does not support CSS3 column-span:, Webkit, https://bugs.webkit.org/show_bug.cgi?id=15550
- ^ Bug 60731 - Implement CSS3 Grid Layout (master bug), Webkit, https://bugs.webkit.org/show_bug.cgi?id=60731
- ^ Scrolling text with -webkit-marquee, Ajnaware, 2008-08-14, http://ajnaware.wordpress.com/2008/08/14/scrolling-text-with-webkit-marquee/
- ^ Bug 8735 - CSS 2.1 visibility: collapse rendered as visibility: hidden, Webkit, https://bugs.webkit.org/show_bug.cgi?id=8735
- ^ Bug 16662 - CSS3: Implement calc(), Webkit, https://bugs.webkit.org/show_bug.cgi?id=16662
- ^ Fraser, Simon (2011-01-14). "CSS3 Gradients". Surfin’ Safari. WebKit. http://webkit.org/blog/1424/css3-gradients/. Retrieved 2011-01-16.
- ^ Bug 27160 - Implement vw/vh/vm (viewport sizes) from CSS 3 Values and Units, Webkit, https://bugs.webkit.org/show_bug.cgi?id=27160
Presto references
- ^ Storey, David (2010-11-23). "First browser to 11 (unless Chrome gets there first)". Opera. http://my.opera.com/ODIN/blog/first-browser-to-11-unless-chrome-gets-there-first. Retrieved 2010-11-23.
- ^ Haavard (2010-08-09), New 10.70 snapshot with more Presto updates, Opera, http://my.opera.com/desktopteam/blog/2010/08/09/new-10-70-snapshot-with-more-presto-updates
- ^ Haavard (2010-08-03), Presto update for Opera 10.70, Opera, http://my.opera.com/desktopteam/blog/2010/08/03/presto-update
- ^ "CSS Multi-column Layout Module support in Opera Presto 2.8". Opera. 2011-03-06. http://www.opera.com/docs/specs/presto28/css/multicolumnlayout/. Retrieved 2011-03-06.
- ^ Koch, Peter-Paul, :before/:after and content, Quirksmode, http://www.quirksmode.org/css/beforeafter_content.html
- ^ Quantization error for em values in Opera 7–9.2, archived from the original on 2008-03-21, http://web.archive.org/web/20080321205550/http://www.brunildo.org/test/emarg.pl
Prince XML references
Other references
External links
- WebDevout — mostly covers Windows browsers. Extensive bug testing.
- QuirksMode — comprehensive and current as of June 2010.
- [1] - Chrome 15 adds Css Regions support.
- [2] - Css regions implemented in Chrome 15 and IE 10.
- [3] - Css regions implemented in IE 10